package cn.topevery.garden.entity.bo;

import cn.topevery.garden.entity.po.event.EventInfoFile;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;

/**
 * 案件表 BO
 *
 * @author code-generate
 * @date 2022-08-23
 */
@Data
@Accessors(chain = true)
@ApiModel(value = "EventInfoBo", description = "案件表 BO")
public class EventInfoBo implements Serializable {

    /**
     * 案件ID
     */
    @ApiModelProperty(value = "案件ID")
    @NotBlank(message = "案件id不得为空")
    private String evtId;

    @ApiModelProperty("当前环节实例id")
    @NotBlank(message = "当前环节不为空")
    private String curActInstId;

    @ApiModelProperty(hidden = true, value = "办理用户id")
    private String userId;

    /**
     * 所属标段ID
     */
    @ApiModelProperty(value = "所属标段ID")
    @NotNull(message = "标段id不可为空")
    private Integer sectionId;

    /**
     * 所属企业ID
     */
    @ApiModelProperty(value = "所属企业ID")
    @NotNull(message = "企业id不可为空")
    private Integer companyId;

//    /**
//     * 问题类型
//     */
//    @ApiModelProperty(value = "问题类型")
//    private String typeId;

    @ApiModelProperty(value = "问题类型")
    private List<String> typeList;

    /**
     * 实际扣分值
     */
    @ApiModelProperty(value = "实际扣分值")
    private Float actualKfValue;

    /**
     * 经度
     */
    @ApiModelProperty(value = "经度")
    private Double geoX;

    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度")
    private Double geoY;

    /**
     * 墨卡托X
     */
    @ApiModelProperty(value = "墨卡托X")
    private Double mercatorX;

    /**
     * 墨卡托Y
     */
    @ApiModelProperty(value = "墨卡托Y")
    private Double mercatorY;

    /**
     * 百度坐标X
     */
    @ApiModelProperty(value = "百度坐标X")
    private Double lngBd09;

    /**
     * 百度坐标Y
     */
    @ApiModelProperty(value = "百度坐标Y")
    private Double latBd09;

    /**
     * 大地2000 X
     */
    @ApiModelProperty(value = "大地2000 X")
    private Double lng2000;

    /**
     * 大地2000 Y
     */
    @ApiModelProperty(value = "大地2000 Y ")
    private Double lat2000;

    /**
     * 火星坐标 X
     */
    @ApiModelProperty(value = "火星坐标 X ")
    private Double lngGcj02;

    /**
     * 火星坐标 Y
     */
    @ApiModelProperty(value = "火星坐标 Y ")
    private Double latGcj02;

    /**
     * 案件地址
     */
    @ApiModelProperty(value = "案件地址")
    private String address;

    /**
     * 图片ID
     */
    @ApiModelProperty(value = "图片ID")
    private String photoId;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "附件")
    private List<EventInfoFile> fileList;
}